/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ua.epam.muzalevskiy.third_project.knife;

/**
 * This class describe parameters of knife blade.
 *
 * @author Muzalevskiy Vitaliy
 */
public class Blade {
    
    /**
     * Value of <code> BladeLength </code> type that describe blade length
     * with it units.
     */
    private BladeLength length;
    
    /**
     * Value of <code> BladeWidth </code> type that describe blade width
     * with it units.
     */
    private BladeWidth width;
    
    /**
     * Value of <code> BladeMaterial </code> type which is one of the 
     * enumerated blade materials.
     */
    private BladeMaterial material;

    /**
     * Constructor of <code> Blade </code> class.
     *
     * @param length - value of blade length.
     * @param width - value of blade width.
     * @param material - value of blade material.
     */
    public Blade(BladeLength length, BladeWidth width, BladeMaterial material) {
        this.length = length;
        this.width = width;
        this.material = material;
    }

    /**
     * @return the length
     */
    public BladeLength getLength() {
        return length;
    }

    /**
     * @return the width
     */
    public BladeWidth getWidth() {
        return width;
    }

    /**
     * @return the material
     */
    public BladeMaterial getMaterial() {
        return material;
    }

    @Override
    public String toString() {
        return "Blade [" + length + ", " + width + ", material=" + material + ']';
    }
    
    
}
